Preparing a SQL Server Database

SilhouetteCentral stores all patient demographic and assessment data in a SQL server database. Depending upon your expected scale and existing IT infrastructure this database can be hosted on the same server running the SilhouetteCentral website, or it can be hosted on a dedicated database server.

Using an existing SQL Server Installation

If an existing instance of SQL Server has been designated to host the SilhouetteCentral database, you need to obtain the required connection details to access the database. These details include:

Your Database Administrator (DBA) should be able to create the database and provide these details to you. The database can be created empty and SilhouetteCentral populates it during the installation procedure. The identity used to run the SilhouetteCentral IIS AppPool needs to be allocated database ownership.

Installing SQL Server

The use of SQL Server Express is not recommended for production installations due to limitations on database performance, size and features.

The exact instructions to install SQL Server depend on the SQL server edition and version. The basic steps are provided below, derived from SQL Server 2014, but it is recommended to read and follow the instructions that come with SQL Server.

  1. Run the SQL Server installation executable and click the OK button on the “Choose Directory For Extracted Files” dialog.
  2. On the “SQL Server Installation Center” dialog, select the “New SQL Server stand-alone installation or add features to an existing installation” link (towards top right corner of dialog).
  3. The SQL Server Setup wizard starts.
  4. Select “I accept the license terms” and click Next.
  5. On the Feature Selection step ensure the following features are enabled and click Next.
    1. Database Engine Services
    2. Management Tools – Basic
  6. On the Instance Configuration step, select the “Named Instance” option and give the SQL server instance an appropriate name, e.g. SQLSILHOUETTE, then click Next.
  7. On the Server Configuration, step click Next.
  8. On the Database Engine Configuration step, select the “Windows authentication mode” option and click Next.
  9. Follow any additional prompts that appear until installation is completed.

Creating a SilhouetteCentral Database

Once SQL Server has been installed a blank database must be created to store all clinical assessment data. This can be created in a number of ways including:

Creating a Database using SQL Management Studio
Creating a Database using Windows Powershell

Creation of the SilhouetteCentral database may also be scripted via a powershell command prompt:

Invoke-Sqlcmd –ServerInstance .\SILHOUETTE –Query "CREATE DATABASE Silhouette"

Invoke-Sqlcmd –ServerInstance .\SILHOUETTE –Query "CREATE LOGIN

[IIS AppPool\Silhouette] FROM WINDOWS WITH DEFAULT_DATABASE=Silhouette"

Invoke-Sqlcmd –ServerInstance .\SILHOUETTE –Query "USE Silhouette CREATE USER [IIS AppPool\Silhouette] FOR LOGIN [IIS AppPool\Silhouette];"

Required permissions on the Silhouette database:

Invoke-Sqlcmd –ServerInstance .\SILHOUETTE –Query "USE Silhouette exec sp_addrolemember 'db_owner', [IIS AppPool\Silhouette]"

If securing database access using the IIS AppPool\Silhouette user account the database server must be running on the same server as IIS. You may need to wait until step 1 of the SilhouetteCentral configuration wizard before securing database access as the IIS AppPool\Silhouette user account may not exist until this point of the installation process.